#include <stdio.h>
#include <stdlib.h>

/*
向文件写入
fputs
fputc
int fprintf(FILE *stream, const char *format, ...);
*/

typedef struct 
{
    // 登录用
    char user_name[128];   // 账号
    char password[128];    // 密码
    // 学生信息
    char name[128];        // 学生姓名
    char sex[5];           // 学生性别
    int id;                 // 学生id
    int age;                // 学生年龄
    int soc;                // 学生成绩
}stu_user;

int main(int argc, char const *argv[])
{
    // 打开文件
    FILE * fp = fopen("hello.txt" , "r+");
    if (NULL == fp)
    {
        printf("文件打开失败\n");
        exit(-1);
    }

    // 向文件中写入字符
    fputc('H' , fp);
    fputc('e' , fp);
    fputc('l' , fp);
    fputc('l' , fp);
    fputc('o' , fp);
    fputc('\n' , fp);

    // 向文件中写入字符串
    fputs("hello\n" , fp);

    // 向文件中写入格式化字符
    stu_user s1[20] = {
        {"石昊" , "1" , "石昊" , "男" , 1 , 18 , 100},
        {"萧炎" , "2" , "萧炎" , "男" , 1 , 18 , 100},
        {"牧尘" , "3" , "牧尘" , "男" , 1 , 18 , 100},
        {"唐三" , "4" , "唐三" , "男" , 1 , 18 , 100},
        {"林动" , "6" , "林动" , "男" , 1 , 18 , 100},
    };

    for (size_t i = 0; i < 5; i++)
    {
        fprintf( fp , "%s\t%s\t%s\t%s\t%d\t%d\t%d\n" , \
            s1[i].user_name , s1[i].password , \
            s1[i].name , s1[i].sex , s1[i].id , \
            s1[i].age  , s1[i].soc
        );
    }
    

    fclose(fp);
    return 0;
}
